#ifndef _CUSTOMHANDLER_H_
#define _CUSTOMHANDLER_H_

#include <iostream>
#include <string>
#include <memory>
#include <vector>
#include <string>
#include <fstream>
#include <format>
#include "MySqlConnPool/include/sqlsetmanager.h"
#include "Epoll_Network/include/TcpServer.h"
#include <fmt/core.h>



class CustomStrategy {
public:
    virtual void execute(int socket,std::vector<std::string>* content)const = 0;
    virtual ~CustomStrategy(){
        std::cout<<"custom strategt deleted"<<std::endl;
    }
};


class SignUpStrategy:public CustomStrategy{
public:
    void execute(int socket,std::vector<std::string>* content)const override;
    ~SignUpStrategy(){}
};

class UpdateAvatarStrategy:public CustomStrategy{
public:
    void execute(int socket,std::vector<std::string>* content)const override;
    ~UpdateAvatarStrategy(){}
};

class CustomStrategyFactory {
public:
    static CustomStrategy* createStrategy(const std::string type);
private:

};


#endif
